package com.asgard.crypto;

import java.util.List;

/**
 * 该类封装了用于区块签名校验的回调函数。
 */
@FunctionalInterface
public interface BlockSignatureVerifier {

    /**
     * 校验区块签名。
     *
     * @param height     区块高度
     * @param signable   被签名信息，区块或区块头
     * @param signatures 签名
     * @return 校验结果
     */
    VerifyResult verifySignature(long height, Signable signable, List<byte[]> signatures);

}
